home *** CD-ROM | disk | FTP | other *** search
/ Belgian Amiga Club - ADF Collection / BS1 part 26.zip / BS1 part 26 / Aztec C v5.2a disk 4.adf / incl52.lzh / func1_3.h < prev    next >
C/C++ Source or Header  |  1991-09-25  |  25KB  |  562 lines

  1. /* Copyright Manx Software Systems, Inc. 1989.  All rights reserved */
  2.  
  3. #ifndef __FUNCTIONS_H
  4. #define __FUNCTIONS_H
  5. #include <libraries/dos.h>
  6.  
  7. typedef void (*PVF)();
  8.  
  9. long Chk_Abort(void);
  10. extern int Enable_Abort;
  11.  
  12. /************** structs ****************************/
  13. struct cLPool;
  14. struct InputEvent;
  15. struct Device;
  16. struct DateStamp;
  17. struct KeyMap;
  18. struct TextAttr;
  19. struct TextFont;
  20. struct FileInfoBlock;
  21. struct FontContentsHeader;
  22. struct InfoData;
  23. struct Process;
  24. struct Library;
  25. struct MemList;
  26. struct Resident;
  27. struct Interrupt;
  28. struct MemHeader;
  29. struct List;
  30. struct Node;
  31. struct Task;
  32. struct MsgPort;
  33. struct Message;
  34. struct IORequest;
  35. struct MiscResource;
  36. struct Semaphore;
  37. struct SignalSemaphore;
  38. struct IOStdReq;
  39. struct ConfigDev;
  40. struct CurrentBinding;
  41. struct DeviceNode;
  42. struct BitMap;
  43. struct RastPort;
  44. struct Bob;
  45. struct VSprite;
  46. struct ViewPort;
  47. struct GelsInfo;
  48. struct AnimOb;
  49. struct View;
  50. struct bltnode;
  51. struct AreaInfo;
  52. struct UCopList;
  53. struct SimpleSprite;
  54. struct Layer;
  55. struct TmpRas;
  56. struct Region;
  57. struct Rectangle;
  58. struct CopList;
  59. struct cprlist;
  60. struct ColorMap;
  61. struct WBObject;
  62. struct DiskObject;
  63. struct FreeList;
  64. struct Window;
  65. struct Gadget;
  66. struct Screen;
  67. struct Border;
  68. struct Image;
  69. struct Requester;
  70. struct Preferences;
  71. struct Menu;
  72. struct MenuItem;
  73. struct NewScreen;
  74. struct NewWindow;
  75. struct IntuiText;
  76. struct Remember;
  77. struct Layer_Info;
  78. struct Layer;
  79. struct ClipRect;
  80. struct timeval;
  81. struct DiscResourceUnit;
  82.  
  83. /************** Console ****************************/
  84.  
  85. struct InputEvent * CDInputHandler(struct InputEvent *event,struct Device *device);
  86. long RawKeyConvert(struct InputEvent *event,char *buffer,long length,struct KeyMap *keyMap);
  87.  
  88. /************** DiskFont ***************************/
  89.  
  90. struct TextFont * OpenDiskFont(struct TextAttr *textAttr);
  91. long AvailFonts(char *buffer,long bufBytes,long flags);
  92. void DisposeFontContents(struct FontContentsHeader *);
  93. struct FontContentsHeader *NewFontContents(BPTR, char *);
  94.  
  95. /************** Dos ********************************/
  96.  
  97. BPTR Open(const char *name, long accessMode);
  98. void Close(BPTR file);
  99. long Read(BPTR file, char *buffer, long length);
  100. long Write(BPTR file, char *buffer, long length);
  101. BPTR Input(void);
  102. BPTR Output(void);
  103. long Seek(BPTR file, long position, long offset);
  104. long DeleteFile(const char *name);
  105. long Rename(const char *oldName, const char *newName);
  106. BPTR Lock(const char *name, long type);
  107. void UnLock(BPTR);
  108. BPTR DupLock(BPTR);
  109. long Examine(BPTR lock, struct FileInfoBlock *fileInfoBlock);
  110. long ExNext(BPTR lock, struct FileInfoBlock *fileInfoBlock);
  111. long Info(BPTR lock, struct InfoData *parameterBlock);
  112. BPTR CreateDir(const char *name);
  113. BPTR CurrentDir(BPTR lock);
  114. long IoErr(void);
  115. struct MsgPort *CreateProc(const char *name, long pri, BPTR segList, long stackSize);
  116. void Exit(long returnCode);
  117. BPTR LoadSeg(const char *fileName);
  118. void UnLoadSeg(BPTR segList);
  119. long GetPacket(long wait);
  120. long QueuePacket(long *packet);
  121. struct MsgPort *DeviceProc(const char *name);
  122. long SetComment(const char *name, const char *comment);
  123. long SetProtection(const char *name, long mask);
  124. struct DateStamp *DateStamp(struct DateStamp *date);
  125. void Delay(long timeout);
  126. long WaitForChar(BPTR file, long timeout);
  127. BPTR ParentDir(BPTR);
  128. long IsInteractive(BPTR file);
  129. long Execute(const char *string, BPTR input, BPTR output);
  130.  
  131. /************** Exec *******************************/
  132.  
  133. void Supervisor(void);
  134. void ExitIntr(void);
  135. void Schedule(void);
  136. void Reschedule(void);
  137. void Switch(void);
  138. void Dispatch(void);
  139. void Exception(void);
  140. void InitCode(long startClass, long version);
  141. void InitStruct(short *initTable, void *memory, long size);
  142. struct Library * MakeLibrary(PVF funcInit[], short *structInit, struct Library *(*libInit)(), long dataSize, struct MemList *codeSize);
  143. long MakeFunctions(char *target, PVF functionArray[], char *funcDispBase);
  144. struct Resident * FindResident(const char *name);
  145. void InitResident(struct Resident *resident, long segList);
  146. long Alert(long alertNum, long parameters);
  147. void Debug( unsigned long flags );    /* 9/3/91 changed args from void */
  148. void Disable(void);
  149. void Enable(void);
  150. void Forbid(void);
  151. void Permit(void);
  152. long SetSR(long newSR, long mask);
  153. long SuperState(void);
  154. void UserState(void *sysStack);
  155. struct Interrupt * SetIntVector(long intNumber, struct Interrupt *interrupt);
  156. void AddIntServer(long intNumber,struct Interrupt *interrupt);
  157. void RemIntServer(long intNumber, struct Interrupt *interrupt);
  158. void Cause(struct Interrupt *interrupt);
  159. void * Allocate(struct MemHeader *freeList, long byteSize);
  160. void Deallocate(struct MemHeader *freeList, void *memoryBlock, long byteSize);
  161. void * AllocMem(long byteSize, long requirements);
  162. void * AllocAbs(long byteSize, void *location);
  163. void FreeMem(void *memoryBlock, long byteSize);
  164. long AvailMem(long requirements);
  165. struct MemList * AllocEntry(struct MemList *entry);
  166. void FreeEntry(struct MemList *entry);
  167. void Insert(struct List *list, struct Node *node, struct Node *pred);
  168. void AddHead(struct List *list, struct Node *node);
  169. void AddTail(struct List *list, struct Node *node);
  170. void Remove(struct Node *node);
  171. struct Node * RemHead(struct List *list);
  172. struct Node * RemTail(struct List *list);
  173. void Enqueue(struct List *list, struct Node *node);
  174. struct Node * FindName(struct List *list, const char *name);
  175. void AddTask(struct Task *task, void *initPC, void *finalPC);
  176. void RemTask(struct Task *task);
  177. struct Task * FindTask(const char *name);
  178. long SetTaskPri(struct Task *task, long priority);
  179. long SetSignal(long newSignals, long signalSet);
  180. long SetExcept(long newSignals, long signalSet);
  181. long Wait(long signalSet);
  182. void Signal(struct Task *task, long signalSet);
  183. long AllocSignal(long signalNum);
  184. void FreeSignal(long signalNum);
  185. long AllocTrap(long trapNum);
  186. void FreeTrap(long trapNum);
  187. void AddPort(struct MsgPort *port);
  188. void RemPort(struct MsgPort *port);
  189. void PutMsg(struct MsgPort *port, struct Message *message);
  190. struct Message * GetMsg(struct MsgPort *port);
  191. void ReplyMsg(struct Message *message);
  192. struct Message * WaitPort(struct MsgPort *port);
  193. struct MsgPort * FindPort(const char *name);
  194. void AddLibrary(struct Library *library);
  195. long RemLibrary(struct Library *library);
  196. void * OldOpenLibrary(const char *libName);
  197. void CloseLibrary(void *library);
  198. PVF SetFunction(struct Library *library, long funcOffset, PVF funcEntry);
  199. void SumLibrary(struct Library *library);
  200. void AddDevice(struct Device *device);
  201. long RemDevice(struct Device *device);
  202. long OpenDevice(const char *devName, long unit, struct IORequest *ioRequest, long flags);
  203. void CloseDevice(struct IORequest *ioRequest);
  204. long DoIO(struct IORequest *ioRequest);
  205. void SendIO(struct IORequest *ioRequest);
  206. struct IORequest * CheckIO(struct IORequest *ioRequest);
  207. long WaitIO(struct IORequest *ioRequest);
  208. unsigned char AbortIO(struct IORequest *ioRequest);
  209. void AddResource(struct MiscResource *resource);
  210. void RemResource(struct MiscResource *resource);
  211. struct MiscResource * OpenResource(const char *); /* 9/3/91 deleted arg 2 */
  212. void RawIOInit(void);
  213. long RawMayGetChar(void);
  214. void RawPutChar(long c);
  215. void RawDoFmt(const char *FormatString, char *DataStream, PVF PutChProc, long PutChData);
  216. long GetCC(void);
  217. long TypeOfMem(char *address);
  218. long Procure(struct Semaphore *semaport, struct Message *bidMsg);
  219. void Vacate(struct Semaphore *semaport);
  220. void * OpenLibrary(const char *libName, long version);
  221. void InitSemaphore(struct SignalSemaphore *sigSem);
  222. void ObtainSemaphore(struct SignalSemaphore *sigSem);
  223. void ReleaseSemaphore(struct SignalSemaphore *sigSem);
  224. long AttemptSemaphore(struct SignalSemaphore *sigSem);
  225. void ObtainSemaphoreList(struct List *sigSemList);
  226. void ReleaseSemaphoreList(struct List *sigSemList);
  227. struct SignalSemaphore * FindSemaphore(const char *name);
  228. void AddSemaphore(struct SignalSemaphore *sigSem);
  229. void RemSemaphore(struct SignalSemaphore *sigSem);
  230. void SumKickData(void);
  231. long AddMemList(long size, long attributes, long pri, void *base, const char *name);
  232. void CopyMem(char *source, char *dest, long size);
  233. void CopyMemQuick(char *source, char *dest, long size);
  234.  
  235. /* Not in ROM */
  236. struct IORequest * CreateExtIO(struct MsgPort *ioReplyPort, long size);
  237. struct MsgPort* CreatePort(const char *name,long pri);
  238. struct IOStdReq * CreateStdIO(struct MsgPort *mp);
  239. struct Task * CreateTask(const char *name,long pri,void *start_pc,long stksiz);
  240. void DeleteExtIO (struct IORequest *ioReq);
  241. void DeletePort(struct MsgPort *port);
  242. void DeleteStdIO(struct IOStdReq *iop);
  243. void DeleteTask(struct Task *tp);
  244. void BeginIO(struct IORequest *ioRequest);
  245. void NewList(struct List *list);
  246.  
  247.  
  248. /************** Expansion **************************/
  249.  
  250. void AddConfigDev(struct ConfigDev *configDev);
  251. long AllocBoardMem(long slotSpec);
  252. struct ConfigDev * AllocConfigDev(void);
  253. long AllocExpansionMem(long numSlots,long SlotAlign,long SlotOffset);
  254. long ConfigBoard(long board,struct ConfigDev *configDev);
  255. long ConfigChain(long baseAddr);
  256. struct ConfigDev * FindConfigDev(struct ConfigDev *oldConfigDev,long manufacturer,long product);
  257. void FreeBoardMem(long startSlot,long slotSpec);
  258. void FreeConfigDev(struct ConfigDev *configDev);
  259. void FreeExpansionMem(long startSlot,long numSlots);
  260. long ReadExpansionByte(const char *board,long offset);
  261. long ReadExpansionRom(const char *board,struct ConfigDev *configDev);
  262. void RemConfigDev(struct ConfigDev *configDev);
  263. long WriteExpansionByte(const char *board,long offset,long byte);
  264. void ObtainConfigBinding(void);
  265. void ReleaseConfigBinding(void);
  266. void SetCurrentBinding(struct CurrentBinding *currentBinding,long bindingSize);
  267. long GetCurrentBinding(struct CurrentBinding *currentBinding,long bindingSize);
  268. struct DeviceNode * MakeDosNode(long *parmPacket);
  269. long AddDosNode(long bootPri,long flags,struct DeviceNode *dosNode);
  270.  
  271. /************** Graphics ***************************/
  272.  
  273. long BltBitMap(struct BitMap *srcBitMap, long srcX, long srcY, struct BitMap *destBitMap, long destX, long destY, long sizeX, long sizeY, long minterm, long mask, long tempA);
  274. void BltTemplate(char *source, long srcX, long srcMod, struct RastPort *destRastPort, long destX, long destY, long sizeX, long sizeY);
  275. void ClearEOL(struct RastPort *rastPort);
  276. void ClearScreen(struct RastPort *rastPort);
  277. long TextLength(struct RastPort *rastPort, const char *string, long count);
  278. long Text(struct RastPort *rastPort, const char *string, long count);
  279. void SetFont(struct RastPort *rastPort, struct TextFont *textFont);
  280. struct TextFont * OpenFont(struct TextAttr *textAttr);
  281. void CloseFont(struct TextFont *textFont);
  282. long AskSoftStyle(struct RastPort *rastPort);
  283. long SetSoftStyle(struct RastPort *rastPort, long style, long enable);
  284. void AddBob(struct Bob *bob, struct RastPort *rastPort);
  285. void AddVSprite(struct VSprite *vSprite, struct RastPort *rastPort);
  286. void DoCollision(struct RastPort *rastPort);
  287. void DrawGList(struct RastPort *rastPort, struct ViewPort *viewPort);
  288. void InitGels(struct VSprite *dummyHead, struct VSprite *dummyTail, struct GelsInfo *gelsInfo);
  289. void InitMasks(struct VSprite *vSprite);
  290. void RemIBob(struct Bob *bob, struct RastPort *rastPort, struct ViewPort *viewPort);
  291. void RemVSprite(struct VSprite *vSprite);
  292. void SetCollision(long type, PVF routine, struct GelsInfo *gelsInfo);
  293. void SortGList(struct RastPort *rastPort);
  294. void AddAnimOb(struct AnimOb *obj, struct AnimOb **animationKey, struct RastPort *rastPort);
  295. void Animate(struct AnimOb **animationKey, struct RastPort *rastPort);
  296. long GetGBuffers(struct AnimOb *animationObj, struct RastPort *rastPort, long doubleBuffer);
  297. void InitGMasks(struct AnimOb *animationObj);
  298. void DrawEllipse(struct RastPort *rastPort, long cx, long cy, long a, long b);
  299. long AreaEllipse(struct RastPort *rastPort, long cx, long cy, long a, long b);
  300. void LoadRGB4(struct ViewPort *viewPort, unsigned short *colors, long count);
  301. void InitRastPort(struct RastPort *rastPort);
  302. void InitVPort(struct ViewPort *viewPort);
  303. void MrgCop(struct View *view);
  304. void MakeVPort(struct View *view, struct ViewPort *viewPort);
  305. void LoadView(struct View *view);
  306. void WaitBlit(void);
  307. void SetRast(struct RastPort *rastPort, long color);
  308. void Move(struct RastPort *rastPort, long x, long y);
  309. void Draw(struct RastPort *rastPort, long x, long y);
  310. long AreaMove(struct RastPort *rastPort,long x,long y);
  311. long AreaDraw(struct RastPort *rastPort,long x,long y);
  312. void AreaEnd(struct RastPort *rastPort);
  313. void WaitTOF(void);
  314. void QBlit(struct bltnode *blit);
  315. void InitArea(struct AreaInfo *areaInfo, short *vectorTable, long vectorTableSize);
  316. void SetRGB4(struct ViewPort *viewPort,long index,long r,long g,long b);
  317. void QBSBlit(struct bltnode *blit);
  318. void BltClear(char *memory,long size,long flags);
  319. void RectFill(struct RastPort *rastPort,long xl,long yl,long xu,long yu);
  320. void BltPattern(struct RastPort *rastPort,char *ras,long xl,long yl,long maxX,long maxY,long fillBytes);
  321. long ReadPixel(struct RastPort *rastPort,long x,long y);
  322. void WritePixel(struct RastPort *rastPort,long x,long y);
  323. long Flood(struct RastPort *rastPort,long mode,long x,long y);
  324. void PolyDraw(struct RastPort *rastPort,long count,short *polyTable);
  325. void SetAPen(struct RastPort *rastPort,long pen);
  326. void SetBPen(struct RastPort *rastPort,long pen);
  327. void SetDrMd(struct RastPort *rastPort,long drawMode);
  328. void InitView(struct View *view);
  329. void CBump(struct UCopList *copperList);
  330. void CMove(struct UCopList *copperList,long *reg,long data);
  331. void CWait(struct UCopList *copperList,long x,long y);
  332. long VBeamPos(void);
  333. void InitBitMap(struct BitMap *bitMap,long depth,long width,long height);
  334. void ScrollRaster(struct RastPort *rastPort,long dX,long dY,long minx,long miny,long maxx,long maxy);
  335. void WaitBOVP(struct ViewPort *viewport);
  336. long GetSprite(struct SimpleSprite *simplesprite, long num);
  337. void FreeSprite(long num);
  338. void ChangeSprite(struct ViewPort *vp,struct SimpleSprite *simplesprite,short *data);
  339. void MoveSprite(struct ViewPort *viewport,struct SimpleSprite *simplesprite,long x,long y);
  340. void LockLayerRom(struct Layer *layer);
  341. void UnlockLayerRom(struct Layer *layer);
  342. void SyncSBitMap(struct Layer *l);
  343. void CopySBitMap(struct Layer *l);
  344. void OwnBlitter(void);
  345. void DisownBlitter(void);
  346. void InitTmpRas(struct TmpRas *tmpras,char *buff,long size);
  347. void AskFont(struct RastPort *rastPort,struct TextAttr *textAttr);
  348. void AddFont(struct TextFont *textFont);
  349. long RemFont(struct TextFont *textFont);
  350. void * AllocRaster(long width,long height);
  351. void FreeRaster(void *planeptr,long width,long height);
  352. void AndRectRegion(struct Region *rgn,struct Rectangle *rect);
  353. void OrRectRegion(struct Region *rgn,struct Rectangle *rect);
  354. struct Region * NewRegion(void);
  355. long ClearRectRegion(struct Region *rgn, struct Rectangle *rect);
  356. void ClearRegion(struct Region *rgn);
  357. void DisposeRegion(struct Region *rgn);
  358. void FreeVPortCopLists(struct ViewPort *viewport);
  359. void FreeCopList(struct CopList *coplist);
  360. void ClipBlit(struct RastPort *srcrp,long srcX,long srcY,struct RastPort *destrp,long destX,long destY,long sizeX,long sizeY,long minterm);
  361. void XorRectRegion(struct Region *rgn,struct Rectangle *rect);
  362. void FreeCprList(struct cprlist *cprlist);
  363. struct ColorMap * GetColorMap(long entries);
  364. void FreeColorMap(struct ColorMap *colormap);
  365. long GetRGB4(struct ColorMap *colormap,long entry);
  366. void ScrollVPort(struct ViewPort *vp);
  367. void UCopperListInit(struct UCopList *copperlist,long num);
  368. void FreeGBuffers(struct AnimOb *animationObj,struct RastPort *rastPort,long doubleBuffer);
  369. long BltBitMapRastPort(struct BitMap *srcbm,long srcx,long srcy,struct RastPort *destrp,long destX,long destY,long sizeX,long sizeY,long minterm);
  370. long OrRegionRegion(struct Region *src,struct Region *dst);
  371. long XorRegionRegion(struct Region *src,struct Region *dst);
  372. long AndRegionRegion(struct Region *src,struct Region *dst);
  373. void SetRGB4CM(struct ColorMap *cm,long i,long r,long g,long b);
  374. void BltMaskBitMapRastPort(struct BitMap *srcbm,long srcx,long srcy,struct RastPort *destrp,long destX,long destY,long sizeX,long sizeY,long minterm,void *bltmask);
  375. void GraphicsReserved1(void);
  376. void GraphicsReserved2(void);
  377. long AttemptLockLayerRom(struct Layer *layer);
  378.  
  379. /* Not in ROM */
  380. #ifndef RemBob
  381. void RemBob(struct Bob *bob);
  382. void InitAnimate(struct AnimOb **animKey);
  383. #endif
  384. #ifndef SetOPen
  385. void SetOPen(struct RastPort *rp, long pen);
  386. void SetDrPt(struct RastPort *rp, long pattern);
  387. void SetWrMsk(struct RastPort *rp, long mask);
  388. void SetAfPt(struct RastPort *rp, unsigned short *pattern, long size);
  389. void BNDRYOFF(struct RastPort *rp);
  390. void CINIT(struct UCopList *c, long n);
  391. void CMOVE(struct UCopList *c, long a, long b);
  392. void CWAIT(struct UCopList *c, long a, long b);
  393. void CEND(struct UCopList *c);
  394. void DrawCircle(struct RastPort *rp, long cx, long cy, long r);
  395. long AreaCircle(struct RastPort *rp, long cx, long cy, long r);
  396. #endif
  397.  
  398.  
  399. /************** Icon *******************************/
  400.  
  401. struct WBObject * GetWBObject(const char *name);
  402. long PutWBObject(const char *name,struct WBObject *object);
  403. long GetIcon(const char *name,struct DiskObject *icon,struct FreeList *freelist);
  404. long PutIcon(const char *name,struct DiskObject *icon);
  405. void FreeFreeList(struct FreeList *freelist);
  406. void FreeWBObject(struct WBObject *WBObject);
  407. struct WBObject * AllocWBObject(void);
  408. void AddFreeList(struct FreeList *freelist,char *mem,long size);
  409. struct DiskObject * GetDiskObject(const char *name);
  410. long PutDiskObject(const char *name,struct DiskObject *diskobj);
  411. void FreeDiskObject(struct DiskObject *diskobj);
  412. char * FindToolType(char **toolTypeArray,const char *typeName);
  413. long MatchToolValue(char *typeString,char *value);
  414. char * BumpRevision(const char *newname,const char *oldname);
  415.  
  416. /************** Intuition **************************/
  417.  
  418. void OpenIntuition(void);
  419. struct InputEvent * Intuition(struct InputEvent *ievent);
  420. long AddGadget(struct Window *AddPtr,struct Gadget *gadget,long Position);
  421. long ClearDMRequest(struct Window *Window);
  422. void ClearMenuStrip(struct Window *Window);
  423. void ClearPointer(struct Window *Window);
  424. void CloseScreen(struct Screen *Screen);
  425. void CloseWindow(struct Window *Window);
  426. long CloseWorkBench(void);
  427. void CurrentTime(long *Seconds,long *Micros);
  428. long DisplayAlert(long AlertNumber,char *String,long Height);
  429. void DisplayBeep(struct Screen *Screen);
  430. long DoubleClick(long sseconds,long smicros,long cseconds,long cmicros);
  431. void DrawBorder(struct RastPort *RPort,struct Border *Border,long LeftOffset,long TopOffset);
  432. void DrawImage(struct RastPort *RPort,struct Image *Image,long LeftOffset,long TopOffset);
  433. void EndRequest(struct Requester *requester,struct Window *window);
  434. struct Preferences * GetDefPrefs(struct Preferences *preferences,long size);
  435. struct Preferences * GetPrefs(struct Preferences *preferences,long size);
  436. void InitRequester(struct Requester *req);
  437. struct MenuItem * ItemAddress(struct Menu *MenuStrip,long MenuNumber);
  438. void ModifyIDCMP(struct Window *Window, long Flags);
  439. void ModifyProp(struct Gadget *Gadget,struct Window *Ptr,struct Requester *Req,long Flags,long HPos,long VPos,long HBody,long VBody);
  440. void MoveScreen(struct Screen *Screen,long dx,long dy);
  441. void MoveWindow(struct Window *window,long dx,long dy);
  442. void OffGadget(struct Gadget *Gadget, struct Window *Ptr,struct Requester *Req);
  443. void OffMenu(struct Window *Window,long MenuNumber);
  444. void OnGadget(struct Gadget *Gadget,struct Window *Ptr,struct Requester *Req);
  445. void OnMenu(struct Window *Window,long MenuNumber);
  446. struct Screen *OpenScreen(struct NewScreen *OSargs);
  447. struct Window *OpenWindow(struct NewWindow *OWargs);
  448. struct Screen *OpenWorkBench(void);
  449. void PrintIText(struct RastPort *rp,struct IntuiText *itext,long left,long top);
  450. void RefreshGadgets(struct Gadget *Gadgets,struct Window *Ptr,struct Requester *Req);
  451. long RemoveGadget(struct Window *RemPtr,struct Gadget *Gadget);
  452. void ReportMouse(long Boolean, struct Window *Window);
  453. long Request(struct Requester *Requester,struct Window *Window);
  454. void ScreenToBack(struct Screen *Screen);
  455. void ScreenToFront(struct Screen *Screen);
  456. long SetDMRequest(struct Window *Window,struct Requester *req);
  457. void SetMenuStrip(struct Window *Window,struct Menu *Menu);
  458. void SetPointer(struct Window *Window,unsigned short *Pointer,long Height,long Width,long Xoffset,long Yoffset);
  459. void SetWindowTitles(struct Window *window,const char *windowtitle,const char *screentitle);
  460. void ShowTitle(struct Screen *Screen,long ShowIt);
  461. void SizeWindow(struct Window *window,long dx,long dy);
  462. struct View * ViewAddress(void);
  463. struct View * ViewPortAddress(struct Window *window);
  464. void WindowToBack(struct Window *window);
  465. void WindowToFront(struct Window *window);
  466. long WindowLimits(struct Window *window,long minwidth,long minheight,long maxwidth,long maxheight);
  467. struct Preferences * SetPrefs(struct Preferences *preferences,long size,long flag);
  468. long IntuiTextLength(struct IntuiText *itext);
  469. long WBenchToBack(void);
  470. long WBenchToFront(void);
  471. long AutoRequest(struct Window *Window,struct IntuiText *Body,struct IntuiText *PText,struct IntuiText *NText,long PFlag,long NFlag,long W,long H);
  472. void BeginRefresh(struct Window *Window);
  473. struct Window * BuildSysRequest(struct Window *Window,struct IntuiText *Body,struct IntuiText *PosText,struct IntuiText *NegText,long Flags,long W,long H);
  474. void EndRefresh(struct Window *Window,long Complete);
  475. void FreeSysRequest(struct Window *Window);
  476. void MakeScreen(struct Screen *Screen);
  477. void RemakeDisplay(void);
  478. void RethinkDisplay(void);
  479. void * AllocRemember(struct Remember **RememberKey,long Size,long Flags);
  480. void AlohaWorkbench(struct MsgPort *wbport);
  481. void FreeRemember(struct Remember **RememberKey,long ReallyForget);
  482. long LockIBase(long dontknow);
  483. void UnlockIBase(long IBLock);
  484. long GetScreenData(char *buffer,long size,long type,struct Screen *screen);
  485. void RefreshGList(struct Gadget *Gadgets,struct Window *Ptr,struct Requester *Req,long NumGad);
  486. long AddGList(struct Window *AddPtr,struct Gadget *Gadget,long Position,long NumGad,struct Requester *Requester);
  487. long RemoveGList(struct Window *RemPtr,struct Gadget *Gadget,long NumGad);
  488. void ActivateWindow(struct Window *Window);
  489. void RefreshWindowFrame(struct Window *Window);
  490. long ActivateGadget(struct Gadget *Gadgets,struct Window *Window,struct Requester *Req);
  491. void NewModifyProp(struct Gadget *Gadget,struct Window *Ptr,struct Requester *Req,long Flags,long HPos,long VPos,long HBody,long VBody,long NumGad);
  492.  
  493. /************** Layers *****************************/
  494.  
  495. void InitLayers(struct Layer_Info *li);
  496. struct Layer * CreateUpfrontLayer(struct Layer_Info *li,struct BitMap *bm,long x0,long y0,long x1,long y1,long flags,struct BitMap *bm2);
  497. struct Layer * CreateBehindLayer(struct Layer_Info *li,struct BitMap *bm,long x0,long y0,long x1,long y1,long flags,struct BitMap *bm2);
  498. long UpfrontLayer(struct Layer_Info *li,struct Layer *layer);
  499. long BehindLayer(struct Layer_Info *li,struct Layer *layer);
  500. long MoveLayer(struct Layer_Info *li,struct Layer *layer,long dx,long dy);
  501. long SizeLayer(struct Layer_Info *li,struct Layer *layer,long dx,long dy);
  502. void ScrollLayer(struct Layer_Info *li,struct Layer *layer,long dx,long dy);
  503. long BeginUpdate(struct Layer *layer);
  504. void EndUpdate(struct Layer *layer,long flag);
  505. void DeleteLayer(struct Layer_Info *li,struct Layer *layer);
  506. void LockLayer(struct Layer_Info *li,struct Layer *layer);
  507. void UnlockLayer(struct Layer *layer);
  508. void LockLayers(struct Layer_Info *li);
  509. void UnlockLayers(struct Layer_Info *li);
  510. void LockLayerInfo(struct Layer_Info *li);
  511. void SwapBitsRastPortClipRect(struct RastPort *rp,struct ClipRect *cr);
  512. struct Layer * WhichLayer(struct Layer_Info *li,long x,long y);
  513. void UnlockLayerInfo(struct Layer_Info *li);
  514. struct Layer_Info * NewLayerInfo(void);
  515. void DisposeLayerInfo(struct Layer_Info *li);
  516. void FattenLayerInfo(struct Layer_Info *li);
  517. void ThinLayerInfo(struct Layer_Info *li);
  518. long MoveLayerInFrontOf(struct Layer *layer_to_move,struct Layer *layer_to_be_infront_of);
  519. struct Region * InstallClipRegion(struct Layer *layer,struct Region *region);
  520.  
  521. /************** Resources ********************************/
  522.  
  523. long AbleICR(struct MiscResource *resource, long mask);
  524. struct Interrupt *AddICRVector(struct MiscResource *resource, long iCRBit, struct Interrupt *interrupt);
  525. void RemICRVector(struct MiscResource *resource, long iCRBit, struct Interrupt *interrupt);
  526. long SetICR(struct MiscResource *resource, long mask);
  527.  
  528. long AllocUnit(struct MiscResource *DRResource, long unitNum);
  529. void FreeUnit(struct MiscResource *DRResource, long unitNum);
  530. long GetUnit(struct MiscResource *DRResource, struct DiscResourceUnit *unitPointer);
  531. long GetUnitID(struct MiscResource *DRResource, long unitNum);
  532. void GiveUnit(struct MiscResource *DRResource);
  533.  
  534. char *AllocMiscResource(struct MiscResource *Resource, long unitNum, char *name);
  535. void FreeMiscResource(struct MiscResource *Resource, long unitNum);
  536.  
  537. /************** PotGo ******************************/
  538.  
  539. long AllocPotBits(long bits);
  540. void FreePotBits(long bits);
  541. void WritePotgo(long word,long mask);
  542.  
  543. /************** Timer ******************************/
  544.  
  545. void AddTime(struct timeval *dest,struct timeval *src);
  546. void SubTime(struct timeval *dest,struct timeval *src);
  547. long CmpTime(struct timeval *dest,struct timeval *src);
  548.  
  549. /************** Translator *************************/
  550.  
  551. long Translate(const char *inputString,long inputLength,char *outputBuffer,long bufferSize);
  552.  
  553. /************** Aztec-specific *********************/
  554. void geta4 (void);
  555.  
  556. #ifndef __NO_PRAGMAS
  557. #include <prag1_3.h>
  558. #endif
  559.  
  560. #endif
  561.  
  562.